@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion

:: 微信分发阅读平台 - Windows一键拉库脚本
:: 作者: MiniMax Agent
:: 版本: v1.0.0

echo.
echo ======================================
echo 🚀 微信分发阅读平台 - Windows一键拉库
echo ======================================
echo.

:: 设置变量
set "REPO_URL=https://gitee.com/17503995945/wechat-reading-platform.git"
set "REPO_NAME=wechat-reading-platform"

:: 检查Git是否安装
echo 📦 检查Git环境...
git --version >nul 2>&1
if errorlevel 1 (
    echo ❌ Git未安装，请先安装Git
    echo 下载地址: https://git-scm.com/download/win
    pause
    exit /b 1
)

:: 检查Node.js是否安装
echo 📦 检查Node.js环境...
node --version >nul 2>&1
if errorlevel 1 (
    echo ❌ Node.js未安装，请先安装Node.js
    echo 下载地址: https://nodejs.org/
    pause
    exit /b 1
)

:: 检查npm是否安装
echo 📦 检查npm环境...
npm --version >nul 2>&1
if errorlevel 1 (
    echo ❌ npm未安装，请先安装Node.js
    pause
    exit /b 1
)

echo ✅ 环境检查完成
echo.

:: 克隆或更新仓库
echo 📥 处理仓库...
if exist "%REPO_NAME%" (
    echo 📁 仓库已存在，更新中...
    cd /d "%REPO_NAME%"
    git pull origin master 2>nul
    if errorlevel 1 (
        echo ⚠️ 拉取更新失败，请检查网络连接
    )
) else (
    echo 📥 克隆仓库中...
    git clone "%REPO_URL%"
    if errorlevel 1 (
        echo ❌ 仓库克隆失败
        echo 请检查网络连接和仓库地址
        pause
        exit /b 1
    )
    cd /d "%REPO_NAME%"
)

echo ✅ 仓库处理完成
echo.

:: 安装依赖
echo 📦 安装项目依赖...
if exist "package.json" (
    npm install axios --no-save
    if errorlevel 1 (
        echo ⚠️ npm安装失败，尝试使用yarn
        yarn add axios 2>nul
        if errorlevel 1 (
            echo ❌ 依赖安装失败
            pause
            exit /b 1
        )
    )
    echo ✅ 依赖安装完成
) else (
    echo ❌ 未找到package.json文件
    pause
    exit /b 1
)

echo.

:: 运行连接测试
echo 🧪 运行连接测试...
node -e "const axios=require('axios');axios.get('http://yyyeee1190830.mcdur8a2di.xin',{timeout:10000}).then(()=>console.log('✅ 平台连接正常')).catch(()=>console.log('❌ 平台连接失败'))" 2>nul || echo ⚠️ 连接测试失败，请检查网络

echo.

:: 生成青龙配置
echo 📝 生成青龙面板任务配置...
echo # 青龙面板任务配置 - 微信分发阅读平台 > ql_tasks_config.txt
echo. >> ql_tasks_config.txt
echo # 任务1: 主脚本执行 (每2小时) >> ql_tasks_config.txt
echo ql task wechat_reading_crawler.js >> ql_tasks_config.txt
echo 规则: 0 */2 * * * >> ql_tasks_config.txt
echo. >> ql_tasks_config.txt
echo # 任务2: 定时任务模式 (每3小时) >> ql_tasks_config.txt
echo ql task wechat_reading_crawler.js schedule >> ql_tasks_config.txt
echo 规则: 0 */3 * * * >> ql_tasks_config.txt
echo. >> ql_tasks_config.txt
echo # 任务3: 快速检查登录状态 (每小时) >> ql_tasks_config.txt
echo ql task wechat_reading_crawler.js checkLoginStatus >> ql_tasks_config.txt
echo 规则: 0 * * * * >> ql_tasks_config.txt

echo ✅ 青龙任务配置已保存到 ql_tasks_config.txt
echo.

:: 完成信息
echo.
echo ======================================
echo 🎉 微信分发阅读平台安装完成!
echo ======================================
echo.
echo 📋 安装信息:
echo   仓库地址: %REPO_URL%
echo   安装路径: %CD%
echo   配置文件: ql_tasks_config.txt
echo.
echo 🚀 快速开始:
echo   1. 执行主脚本: node wechat_reading_crawler.js
echo   2. 扫描二维码进行微信登录
echo   3. 验证登录状态: node wechat_reading_crawler.js checkLoginStatus
echo   4. 在青龙面板中添加定时任务
echo.
echo 📖 更多使用说明请查看:
echo   - README.md (详细文档)
echo   - QUICK_START.md (快速开始)
echo   - GITEE_DEPLOY.md (Gitee部署指南)
echo.
echo 📞 技术支持:
echo   平台客服: QQ 3802451151
echo   开发者: MiniMax Agent
echo   版本: v1.0.0
echo.

:: 询问是否立即运行
set /p "run_now=是否立即运行主脚本? (y/n): "
if /i "%run_now%"=="y" (
    echo.
    echo 🚀 正在启动主脚本...
    node wechat_reading_crawler.js
)

echo.
echo 安装完成，按任意键退出...
pause >nul